home *** CD-ROM | disk | FTP | other *** search
/ SPACE 1 / SPACE - Library 1 - Volume 1.iso / apps / 298 / dbman.tut / dbmanrev.txt next >
Text File  |  1989-05-28  |  13KB  |  257 lines

  1.  
  2.                                dBMAN by Versasoft
  3.                        An Initial Review by John C. Leon
  4.                                   May 29, 1986
  5.                              edited August 18, 1986
  6.  
  7.  
  8.  
  9.  
  10.                      distributed through the H.A.S.T.E. BBS
  11.                   Houston Atari ST Enthusiasts   713-955-9532
  12.             permission granted to distribute unaltered original text
  13.  
  14.  
  15.           It is very difficult for me to evaluate a complicated piece of
  16.         software like  this  in a brief "memo" form of review.  I regret
  17.         not having had time to put dBMAN through  all  its  paces before
  18.         reporting to you, but we thought you deserved a quick opinion of
  19.         this relational database program.
  20.  
  21.           Let's talk a sec about relational  databases.   Those  of  you
  22.         coming straight from the 8-bit Atari world without experience on
  23.         other machines have never seen a  relational  database,  as  the
  24.         8-bit Atari had none  available  for  it!   Products  like  Data
  25.         Perfect and Synfile+ are known as  file  managers.   This  means
  26.         that  they  can only work on one file at a time.  They are  also
  27.         inflexible (tho Data Perfect I consider to be quite powerful) in
  28.         that the built-in functions  are  all  you've  got.   You  can't
  29.         program a data manipulation routine of your own.
  30.  
  31.           Relational databases are  an  entirely new ballgame.  CP/M and
  32.         MS-DOS users have had dBASE, dBASE compilers like Clipper, RBASE
  33.         5000,  Paradox,  and a host of similar products for  quite  some
  34.         time.  The relational databases have two primary characteristics
  35.         that separate them from the file managers.
  36.  
  37.           First,  the  capacity   to   work  on  numerous  "open"  files
  38.         simultaneously.  Imagine an  inventory  file,  a purchases file,
  39.         and a sales  file.   You  take  your  purchases,  increase  your
  40.         inventory based on purchases, record sales, and then reduce your
  41.         inventory  based  on  sales.   That's  three  integrated  files.
  42.         Purchases  and  sales  are  used  to  update inventory.   Here's
  43.         another  example.   If  you  recorded  your  customer names  and
  44.         addresses every time you made  a  sale, then numerous entries in
  45.         the sales file would have redundant information!  Why  not  just
  46.         use a customer NUMBER, and  have  a separate customer file where
  47.         you stored the customer number, along with  the  customer  names
  48.         and addresses?  In this way, you could update  for  a  change of
  49.         address merely  by  updating  the customer file, and not have to
  50.         search your entire sales file, changing the address on each sale
  51.         to that customer.  Preparing invoices is as simple  as  relating
  52.         the customer file to the sales file, extracting name and address
  53.         info from the customer file, and sales to each customer from the
  54.  
  55.  
  56.  
  57.         dBMAN by Versasoft           - 1 -             An Initial Review
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.         sales file.  The  linking  element  between  the  files  is  the
  68.         customer number.  This is the  stuff  of  relational  databases,
  69.         where you normalize your data  to  eliminate  redundancies,  and
  70.         relate files easily for total freedom in data manipulation.
  71.  
  72.           The second distinction  that  any relational database has over
  73.         file   managers  is  its  PROGRAMMABILITY.   The  more   complex
  74.         applications  you  may  wish  to  design  would  require  typing
  75.         numerous  commands  at  the  keyboard  to  accomplish  even  the
  76.         simplest tasks.  These same commands can be programmed, saved in
  77.         a COMMAND file, to automate such tasks.  Think  of such programs
  78.         as  super  macros,  where  the  computer  executes  your  stored
  79.         commands in sequences you design, to facilitate the  running  of
  80.         your system.  Many people make a living out of designing turnkey
  81.         database systems for business (offices, banks, stores, etc).  In
  82.         fact, these database languages are so refined that they actually
  83.         belong in  a  legitimate  class  of  their  own  as  programming
  84.         languages!  With the utilities around these days, you could  use
  85.         any text editor to write a dBASE system, compile it, and have it
  86.         run as a separate stand-alone package, without ever even  having
  87.         owned the actual database itself!  There are no dBMAN  compilers
  88.         per se, but you do use an outside  editor  to  compose programs,
  89.         and can run your programs with  the  runtime  package  available
  90.         separately from Versasoft.  In other words, you can supply dBMAN
  91.         custom programs to be  run  under  the  runtime  package.   Your
  92.         customers do not have to own dBMAN!
  93.  
  94.           The IBM version of dBMAN sells for $295.  The ST version lists
  95.         for $149.95.  It  is  identical  to  the IBM version.  This is a
  96.         very  fair  price in  my  opinion.   I  would  not  hesitate  to
  97.         recommend dBMAN to anyone wanting an incredibly useful tool  for
  98.         data management.
  99.  
  100.           The product itself is delivered  on  two  single-sided  disks,
  101.         unprotected.   One  disk is the dBMAN  interpreter  itself  with
  102.         related files.  The other is a snappy little tutorial disk, that
  103.         gets you going with the rudiments of using  dBMAN.  The tutorial
  104.         disk also includes some sample dBMAN command files  for  mailing
  105.         list management.  I ignored them in favor  of writing my own for
  106.         the sake of flexibility, and as an  exercise, but they will give
  107.         you the flavor of programming.  By  all  means,  print  out  the
  108.         command files on this tutorial disk.  Read through them.   Study
  109.         the  processes  and  logic  involved.   This  is a great way  to
  110.         learn!
  111.  
  112.           The dBMAN package is an attractive grey slipcase, inside which
  113.         is the hardcover  3-ring  binder holding the documentation.  Ah,
  114.         the documentation.   It's  not  the best.  I found it sketchy on
  115.         details regarding command  syntax.   This  product is definitely
  116.         not dBASE compatible, I assure you, though everywhere  you  read
  117.         that it is.  You can use a dBMAN command to CONVERT a dBASE data
  118.         file to dBMAN format, but the programming languages are SIMILAR,
  119.         not compatible.  For example, in dBASE, the command  to delete a
  120.  
  121.  
  122.  
  123.         dBMAN by Versasoft           - 2 -             An Initial Review
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.         file is "ERASE".  In dBMAN, the "ERASE"  command  merely  clears
  134.         the  screen!   There  are  numerous  other  differences  in  the
  135.         language, but they are similar enough so that  you would benefit
  136.         from buying a dBASE III programming  book  at  a  bookstore  and
  137.         studying  it  a little to get the hang of things.  If you are  a
  138.         novice, you will not be able  to  dive  into  dBMAN  programming
  139.         without a substantial investment  in man-hours spent deciphering
  140.         the documentation.  Although the manual is accurate, it  is  not
  141.         as  complete  as  it  could be,  and  does  not  have  the  best
  142.         organization.  I remember looking hard to find the operator that
  143.         would allow me to chain a  command line over more than one line.
  144.         It was buried in a section of the manual titled "File Types"!!!
  145.  
  146.           There is no "LABEL" command.  This means that you will have to
  147.         write your own label maker programs.  Label programs  are  among
  148.         the simplest to write, so this is no big loss in my view.
  149.  
  150.           There is no text editor  built  into the product.  Please note
  151.         that using  the  product  from command level does not require an
  152.         editor.  You simply enter commands one after  the  other.   It's
  153.         the programming that requires an outside editor.  This can  mean
  154.         constant loading of your editor, then dBMAN, exiting, re-loading
  155.         your editor, composing code, re-loading dBMAN,  etc.   I  use  a
  156.         simple technique to simplify things.  On my 1-meg 520ST I create
  157.         a 550K ramdisk with Solapak, copy the editor files and DBMAN.TTP
  158.         to the ramdisk with Solapak's COPY2RAM program, and  work out of
  159.         the  ramdisk.   My  data  and program files  are  on  a  floppy.
  160.         Switching between  dBMAN  and an editor is a breeze when done at
  161.         the speed of a ramdisk.
  162.  
  163.           Be careful in your choice of an editor.  It must be capable of
  164.         producing pure ASCII files.  I used Final Word exclusively until
  165.         I started using "procedures" in my programs.   There  was  never
  166.         any prior indication of trouble, but using the  SET PROCEDURE TO
  167.         command in any command files created with the  Final Word caused
  168.         dBMAN to crash to the  desktop.   This problem gave me countless
  169.         hours of grief until, on a lark, I loaded my procedure file into
  170.         Regent Word.  Lo and behold, the last  byte in the file appeared
  171.         on  my  screen  as  a  non-ASCII  character.  When I had  called
  172.         Versasoft for  help,  one of the questions they had asked me was
  173.         if I was certain the file contained only ASCII characters.  When
  174.         you  save  a  Final  Word  file,  it  puts  an odd character  (a
  175.         non-ASCII character) at its end as an end-of-file marker.   This
  176.         is all it took to bomb my dBMAN programs.  It was a hard problem
  177.         to  troubleshoot,  as  that  darn non-ASCII character  does  not
  178.         appear  on  your screen in the Final Word.  I  now  use  another
  179.         editor for dBMAN programming.
  180.  
  181.           Remember one command above all  others:  SET TALK OFF.  If you
  182.         run  a  program and don't include that statement, each  line  of
  183.         your code will be reflected onscreen  in  the  command  line  (a
  184.         reserved area at the top  of the screen).  This can be a help in
  185.         the debugging stages, but slows  down  execution  to  a  snail's
  186.  
  187.  
  188.  
  189.         dBMAN by Versasoft           - 3 -             An Initial Review
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.         pace.  My club membership list program runs in seconds with talk
  200.         off, but with talk on it can take 15 minutes!
  201.  
  202.           The  "@SAY--GET"  commands  don't  permit  a  "RANGE"  clause,
  203.         leaving it up to you to hack data input validation.  This can be
  204.         done with a sprinkling of IF commands, CASE structures, or other
  205.         techniques.  It can also be done with a  GETFILE structure.  The
  206.         GETFILE is called at the level of the program that called it, so
  207.         local variables are available to the GETFILE.  You can do almost
  208.         anything you want in a GETFILE,  but the primary use would be to
  209.         contain the code to validate the input a user may be typing when
  210.         using  your  application.   There  are  provisions  for  PICTURE
  211.         clauses.
  212.  
  213.           There  are  also  some  nifty  commands  for formatting  menus
  214.         (VMENU, HMENU, BOX,  etc.)   but  I  have  not  tested them yet.
  215.         dBMAN does not use GEM at all, so forget about using a mouse for
  216.         anything.
  217.  
  218.           Support?  The manual states that Versasoft will try to respond
  219.         to any written inquiries but must charge for  telephone  support
  220.         at  the  rate  of  $25  for  6 calls of up to  5  minutes  each.
  221.         Sheesh.
  222.  
  223.           I hope this narrative is helpful to  would-be  purchasers.   I
  224.         highly recommend the product.  It works, appears to  work  well,
  225.         and is  virtually  alone  in the ST software world.  Nothing but
  226.         H&D Base comes close to  its  versatility and power, but whether
  227.         Mirage will survive to support H&D Base is  anybody's guess.  Do
  228.         yourself a  favor.   Buy almost any book on dBASE III before you
  229.         novices get into dBMAN programming.  You won't regret the  extra
  230.         expense!
  231.  
  232.           If you have questions or need some help, leave public messages
  233.         to SYSOP (that's me!)  on the H.A.S.T.E.  BBS.  Myself or one of
  234.         the other dBMAN fanatics will respond.  I  would like to see the
  235.         club develop a series of  articles  to  supplement  the  program
  236.         documentation.  Sophisticated products like these, being sold to
  237.         as new  a  market as most of us ST'ers represent, almost require
  238.         such user  support.   Contact  me  anytime  at  the  HASTE  BBS,
  239.         713-955-9532, 24 hours, 300/1200/2400 baud.
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.         dBMAN by Versasoft           - 4 -             An Initial Review
  256.  
  257.